package com.bestcem.xm.award.util;

import lombok.AccessLevel;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Objects;

/**
 * 金钱转换
 * @author sh.pei <sh.pei@idiaoyan.com>
 * @version v1.0
 * @date 2021/7/2 11:07
 */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class MoneyUtil {

    /**
     * 元转分
     * @param bigDecimal 元
     * @return 分
     */
    public static Long yuanToCent(BigDecimal bigDecimal) {
        if (Objects.isNull(bigDecimal)) {
            return null;
        }
        return bigDecimal.multiply(new BigDecimal(100)).longValue();
    }

    /**
     * 分转元
     * @param cent 分
     * @return 元
     */
    public static BigDecimal centToYuan(Long cent) {
        if (cent == null) {
            return BigDecimal.ZERO;
        } else {
            BigDecimal bigDecimal = new BigDecimal(cent);
            return bigDecimal.divide(new BigDecimal(100));
        }
    }

    /**
     * 分转元
     * @param cent 分
     * @return 元
     */
    public static BigDecimal centToYuan(Integer cent) {
        if (cent == null) {
            return null;
        } else {
            BigDecimal bigDecimal = new BigDecimal(cent);
            return bigDecimal.divide(new BigDecimal(100));
        }
    }
}
